QoS techniques are often used at a communication link in order to control that link's bottleneck bandwidth. These bottlenecks can sometimes occur at fast-to-slow transitions in network speed, for example at a device bridging a Local Area Network (LAN) and a Wide Area Network (WAN). Due to different network speeds at such transitions, a backlog of data packets corresponding to different connections of the communication link can be created at the bottlenecks. Using QoS techniques, the device at a bottleneck can make a decision about which connections can have a data packet sent next. That is, the device can use QoS techniques to schedule the data packets received through one or more connections for sending over the communication link. The bandwidth information of a communication link, however, may not always be available, reliable, or updated. As an example, the bandwidth of a communication link in a cloud network environment may not be available. As another example, the bandwidth of a wireless communication link may change frequently, and thus a previously known bandwidth of the wireless communication link may not be reliable or updated. Under these circumstances, current QoS techniques may not be able to assign priorities to the connections or determine the fairness for sending data packets received through various connections.